package com.ruyuan.seckilling.render.controller;

import com.ruyuan.seckilling.common.MapResult;
import com.ruyuan.seckilling.render.entity.PageConfig;
import com.ruyuan.seckilling.render.service.PageConfigService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.Date;

/**
 * @author zhonghuashishan
 */
@RestController
@RequestMapping("/pageRender/pageConfig")
public class PageConfigController {

    @Autowired
    private PageConfigService pageConfigService;

    @GetMapping("/{pageCode}")
    public MapResult queryByPageCode(@PathVariable("pageCode") String pageCode) {
        PageConfig pageConfig = pageConfigService.queryByPageCode(pageCode);
        return MapResult.successResult().set("pageConfig", pageConfig);
    }

    @PostMapping
    public MapResult save(@RequestBody PageConfig pageConfig) {
        pageConfig.setCreateTime(new Date());
        pageConfig.setUpdateTime(pageConfig.getCreateTime());
        pageConfigService.save(pageConfig);
        return MapResult.successResult().set("pageConfigId", pageConfig.getId());
    }

    @DeleteMapping("/{pageCode}")
    public MapResult removeByPageCode(@PathVariable("pageCode") String pageCode) {
        pageConfigService.removeByPageCode(pageCode);
        return MapResult.successResult();
    }
}
